

package cn.shengchao.examstar.distribute.infrastrure.service;

import cn.shengchao.examstar.rpc.base.PageResult;
import cn.shengchao.examstar.distribute.infrastrure.po.DistributeDeptUserRoleBind;
import cn.shengchao.examstar.rpc.distribute.req.UserDbIQueryPage;
import cn.shengchao.examstar.rpc.distribute.resp.UserDbIResp;
import cn.shengchao.examstar.rpc.distribute.enums.DistributeTypeEnum;
import com.baomidou.mybatisplus.extension.service.IService;


public interface DistributeDeptUserRoleBindService extends IService<DistributeDeptUserRoleBind> {

    Long getDeptBindIdForUser(Long userId, DistributeTypeEnum distributeTypeEnum);

    void disableDeptBind(Long userId, DistributeTypeEnum distributeTypeEnum);

    void processUserDeptRole(DistributeTypeEnum distributeTypeEnum,
                             Long userId,
                             Long deptId,
                             String sysRoleCode,
                             String distributeRoleCode);

    PageResult<UserDbIResp> deptUserPageQuery(UserDbIQueryPage userDbIQueryPage);

}
